package com.starhub.engine.ai.vo;

import lombok.Data;

import java.time.LocalDateTime;

/**
 * AI函数VO对象
 * 用于与前端交互
 */
@Data
public class AiFunctionVO {

    /**
     * 主键ID
     */
    private String id;

    /**
     * 函数名称
     */
    private String name;

    /**
     * 函数描述
     */
    private String description;

    /**
     * 函数类型
     */
    private String type;

    /**
     * 函数参数JSON配置
     */
    private String parameters;

    /**
     * 函数执行前是否需要确认
     */
    private Boolean needConfirm;

    /**
     * 是否触发前端动作
     */
    private Boolean triggerFrontend;

    /**
     * 前端动作类型
     */
    private String frontendAction;

    /**
     * 函数执行后是否将结果再次给到大模型
     */
    private Boolean regenerateResult;

    /**
     * 函数实现类
     */
    private String implementationClass;

    /**
     * 函数实现方法
     */
    private String implementationMethod;

    /**
     * 状态：0-禁用，1-启用
     */
    private String status;

    /**
     * 创建人ID
     */
    private String creatorId;

    /**
     * 创建人姓名
     */
    private String creatorName;

    /**
     * 更新人ID
     */
    private String updaterId;

    /**
     * 更新人姓名
     */
    private String updaterName;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    private LocalDateTime updateTime;
}